package com.sgb.kjwl.model.entity.shopping;

import java.io.Serializable;
import java.util.List;

/**
 * 购物车列表信息
 *
 * @author qiangHeNoooo
 * by 2021.04.23
 */
public class ShoppingCarResponse implements Serializable {

    /**
     * companyId：
     * companyNo : 201909024695838
     * imAccount : 201911041615132
     * companyName : 中钧科技有限公司
     * isOpenAccount：1开通企业钱包 0未开通企业钱包
     * payState : 1
     * paymentMethod:/付款方式  默认0在线支付 1线下付款
     * showPurchasingMethod:/采购方式  默认1 直接采购 2合约采购
     * payBatch://订单支付批次  默认1为全款 其他为分批支付
     * items : [{"companyName":"中钧科技有限公司","cartTitle":"测试订单流程2/热轧带肋钢筋(直条)","promoteStatus":0,"promoteStartTime":"","promoteEndTime":"","itemNum":1,"price":0.66,"itemStatus":1,"cartType":0,"cid2":"971","id":2548,"shopId":807,"commoditySkuDetail":[{"val":"","valId":"5759","createTime":"","name":"材质","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430272","attribute":"882","parentId":"1357509271587393536"},{"val":"Φ121","valId":"5761","createTime":"","name":"规格","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430273","attribute":"883","parentId":"1357509271587393536"},{"val":"#A","valId":"5765","createTime":"","name":"自定义","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430274","attribute":"886","parentId":"1357509271587393536"},{"val":"A4","valId":"5790","createTime":"","name":"数字","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430275","attribute":"897","parentId":"1357509271587393536"}],"cid1":"3","skuId":"1357509271587393536","lowestBuy":1,"promotePrice":0,"images":"[\"material/650000/2021023610000063000200\"]","skuStatus":0,"showCommoditySkuDetail":"材质:  规格: Φ121 自定义: #A 数字: A4 ","itemId":161249040543752,"unit":"吨","imageUrls":["https://shigongbang.oss-cn-hangzhou.aliyuncs.com/material/650000/2021023610000063000200"],"brandId":"20","paramsAll":"[{\"k\":\"测试1\",\"v\":\"aa\"},{\"k\":\"测试A\",\"v\":\"古典风格\"}]","cid":"972"}]
     */
    private String companyId;
    private String companyNo;
    private String imAccount;
    private String companyName;
    private String isOpenAccount;
    private int payState;
    private int paymentMethod;
    private String payRatio;
    private List<ItemsData> items;
    private OtherInfo otherInfos;
    private boolean isChecked;
    private String showPurchasingMethod;
    private PurchasingTypeEntity purchasingTypeEntity;
    /***
     * 0非自营 1自营
     */
    private String selfSupportTag;

    public String getCompanyId() {
        return companyId;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public String getCompanyNo() {
        return companyNo;
    }

    public void setCompanyNo(String companyNo) {
        this.companyNo = companyNo;
    }

    public String getImAccount() {
        return imAccount;
    }

    public void setImAccount(String imAccount) {
        this.imAccount = imAccount;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getIsOpenAccount() {
        return isOpenAccount;
    }

    public void setIsOpenAccount(String isOpenAccount) {
        this.isOpenAccount = isOpenAccount;
    }

    public int getPayState() {
        return payState;
    }

    public void setPayState(int payState) {
        this.payState = payState;
    }

    public int getPaymentMethod() {
        return paymentMethod;
    }

    public void setPaymentMethod(int paymentMethod) {
        this.paymentMethod = paymentMethod;
    }

    public String getPayBatch() {
        return payRatio;
    }

    public void setPayBatch(String payBatch) {
        this.payRatio = payBatch;
    }

    public List<ItemsData> getItems() {
        return items;
    }

    public void setItems(List<ItemsData> items) {
        this.items = items;
    }

    public OtherInfo getOtherInfos() {
        return otherInfos;
    }

    public void setOtherInfos(OtherInfo otherInfos) {
        this.otherInfos = otherInfos;
    }

    public boolean isChecked() {
        return isChecked;
    }

    public void setChecked(boolean checked) {
        isChecked = checked;
    }

    public PurchasingTypeEntity getPurchasingTypeEntity() {
        return purchasingTypeEntity;
    }

    public void setPurchasingTypeEntity(PurchasingTypeEntity purchasingTypeEntity) {
        this.purchasingTypeEntity = purchasingTypeEntity;
    }

    public String getSelfSupportTag() {
        return selfSupportTag;
    }

    public void setSelfSupportTag(String selfSupportTag) {
        this.selfSupportTag = selfSupportTag;
    }

    public String getShowPurchasingMethod() {
        return showPurchasingMethod;
    }

    public void setShowPurchasingMethod(String showPurchasingMethod) {
        this.showPurchasingMethod = showPurchasingMethod;
    }

    public static class ItemsData implements Serializable {
        /**
         * companyName : 中钧科技有限公司
         * cartTitle : 测试订单流程2/热轧带肋钢筋(直条)
         * promoteStatus : 0
         * promoteStartTime :
         * promoteEndTime :
         * itemNum : 1
         * price : 0.66 最优惠的价格
         * priceType 1原价 2促销价 3会员价
         * itemStatus : 1
         * cartType : 0
         * cid2 : 971
         * id : 2548
         * shopId : 807
         * commoditySkuDetail : [{"val":"","valId":"5759","createTime":"","name":"材质","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430272","attribute":"882","parentId":"1357509271587393536"},{"val":"Φ121","valId":"5761","createTime":"","name":"规格","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430273","attribute":"883","parentId":"1357509271587393536"},{"val":"#A","valId":"5765","createTime":"","name":"自定义","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430274","attribute":"886","parentId":"1357509271587393536"},{"val":"A4","valId":"5790","createTime":"","name":"数字","updateUser":"","updateTime":"","createUser":"","id":"1357509272149430275","attribute":"897","parentId":"1357509271587393536"}]
         * cid1 : 3
         * skuId : 1357509271587393536
         * lowestBuy : 1
         * promotePrice : 0
         * images : ["material/650000/2021023610000063000200"]
         * skuStatus : 0
         * showCommoditySkuDetail : 材质:  规格: Φ121 自定义: #A 数字: A4
         * itemId : 161249040543752
         * unit : 吨
         * imageUrls : ["https://shigongbang.oss-cn-hangzhou.aliyuncs.com/material/650000/2021023610000063000200"]
         * brandId : 20
         * paramsAll : [{"k":"测试1","v":"aa"},{"k":"测试A","v":"古典风格"}]
         * cid : 972
         */

        private String companyName;
        private String cartTitle;
        private int promoteStatus;
        private String promoteStartTime;
        private String promoteEndTime;
        private double itemNum;
        private double price;
        private int itemStatus;
        private int cartType;
        private String cid2;
        private int id;
        private int shopId;
        private List<CommoditySkuDetailItem> commoditySkuDetail;
        private String cid1;
        private String skuId;
        private String lowestBuy;
        private double promotePrice;
        private String images;
        private int skuStatus;
        private int priceType;//1原价 2促销价 3会员价【前端需要展示价格颜色】
        private String showCommoditySkuDetail;
        private long itemId;
        private String unit;
        private List<String> imageUrls;
        private String brandId;
        private String paramsAll;
        private String cid;
        private boolean isChecked;

        private Integer choosePriceType;

        public Integer getChoosePriceType() {
            return choosePriceType;
        }

        public void setChoosePriceType(Integer choosePriceType) {
            this.choosePriceType = choosePriceType;
        }

        public String getCompanyName() {
            return companyName;
        }

        public void setCompanyName(String companyName) {
            this.companyName = companyName;
        }

        public String getCartTitle() {
            return cartTitle;
        }

        public void setCartTitle(String cartTitle) {
            this.cartTitle = cartTitle;
        }

        public int getPromoteStatus() {
            return promoteStatus;
        }

        public void setPromoteStatus(int promoteStatus) {
            this.promoteStatus = promoteStatus;
        }

        public String getPromoteStartTime() {
            return promoteStartTime;
        }

        public void setPromoteStartTime(String promoteStartTime) {
            this.promoteStartTime = promoteStartTime;
        }

        public String getPromoteEndTime() {
            return promoteEndTime;
        }

        public void setPromoteEndTime(String promoteEndTime) {
            this.promoteEndTime = promoteEndTime;
        }

        public double getItemNum() {
            return itemNum;
        }

        public void setItemNum(double itemNum) {
            this.itemNum = itemNum;
        }

        public double getPrice() {
            return price;
        }

        public void setPrice(double price) {
            this.price = price;
        }

        public int getItemStatus() {
            return itemStatus;
        }

        public void setItemStatus(int itemStatus) {
            this.itemStatus = itemStatus;
        }

        public int getCartType() {
            return cartType;
        }

        public void setCartType(int cartType) {
            this.cartType = cartType;
        }

        public String getCid2() {
            return cid2;
        }

        public void setCid2(String cid2) {
            this.cid2 = cid2;
        }

        public int getId() {
            return id;
        }

        public void setId(int id) {
            this.id = id;
        }

        public int getShopId() {
            return shopId;
        }

        public void setShopId(int shopId) {
            this.shopId = shopId;
        }

        public List<CommoditySkuDetailItem> getCommoditySkuDetail() {
            return commoditySkuDetail;
        }

        public void setCommoditySkuDetail(List<CommoditySkuDetailItem> commoditySkuDetail) {
            this.commoditySkuDetail = commoditySkuDetail;
        }

        public String getCid1() {
            return cid1;
        }

        public void setCid1(String cid1) {
            this.cid1 = cid1;
        }

        public String getSkuId() {
            return skuId;
        }

        public void setSkuId(String skuId) {
            this.skuId = skuId;
        }

        public String getLowestBuy() {
            return lowestBuy;
        }

        public void setLowestBuy(String lowestBuy) {
            this.lowestBuy = lowestBuy;
        }

        public double getPromotePrice() {
            return promotePrice;
        }

        public void setPromotePrice(double promotePrice) {
            this.promotePrice = promotePrice;
        }

        public String getImages() {
            return images;
        }

        public void setImages(String images) {
            this.images = images;
        }

        public int getSkuStatus() {
            return skuStatus;
        }

        public void setSkuStatus(int skuStatus) {
            this.skuStatus = skuStatus;
        }

        public String getShowCommoditySkuDetail() {
            return showCommoditySkuDetail;
        }

        public void setShowCommoditySkuDetail(String showCommoditySkuDetail) {
            this.showCommoditySkuDetail = showCommoditySkuDetail;
        }

        public long getItemId() {
            return itemId;
        }

        public void setItemId(long itemId) {
            this.itemId = itemId;
        }

        public String getUnit() {
            return unit;
        }

        public void setUnit(String unit) {
            this.unit = unit;
        }

        public List<String> getImageUrls() {
            return imageUrls;
        }

        public void setImageUrls(List<String> imageUrls) {
            this.imageUrls = imageUrls;
        }

        public String getBrandId() {
            return brandId;
        }

        public void setBrandId(String brandId) {
            this.brandId = brandId;
        }

        public String getParamsAll() {
            return paramsAll;
        }

        public void setParamsAll(String paramsAll) {
            this.paramsAll = paramsAll;
        }

        public String getCid() {
            return cid;
        }

        public void setCid(String cid) {
            this.cid = cid;
        }

        public boolean isChecked() {
            return isChecked;
        }

        public void setChecked(boolean checked) {
            isChecked = checked;
        }

        public int getPriceType() {
            return priceType;
        }

        public void setPriceType(int priceType) {
            this.priceType = priceType;
        }

        public static class CommoditySkuDetailItem implements Serializable {
            /**
             * val :
             * valId : 5759
             * createTime :
             * name : 材质
             * updateUser :
             * updateTime :
             * createUser :
             * id : 1357509272149430272
             * attribute : 882
             * parentId : 1357509271587393536
             */

            private String val;
            private String valId;
            private String createTime;
            private String name;
            private String updateUser;
            private String updateTime;
            private String createUser;
            private String id;
            private String attribute;
            private String parentId;

            public String getVal() {
                return val;
            }

            public void setVal(String val) {
                this.val = val;
            }

            public String getValId() {
                return valId;
            }

            public void setValId(String valId) {
                this.valId = valId;
            }

            public String getCreateTime() {
                return createTime;
            }

            public void setCreateTime(String createTime) {
                this.createTime = createTime;
            }

            public String getName() {
                return name;
            }

            public void setName(String name) {
                this.name = name;
            }

            public String getUpdateUser() {
                return updateUser;
            }

            public void setUpdateUser(String updateUser) {
                this.updateUser = updateUser;
            }

            public String getUpdateTime() {
                return updateTime;
            }

            public void setUpdateTime(String updateTime) {
                this.updateTime = updateTime;
            }

            public String getCreateUser() {
                return createUser;
            }

            public void setCreateUser(String createUser) {
                this.createUser = createUser;
            }

            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
            }

            public String getAttribute() {
                return attribute;
            }

            public void setAttribute(String attribute) {
                this.attribute = attribute;
            }

            public String getParentId() {
                return parentId;
            }

            public void setParentId(String parentId) {
                this.parentId = parentId;
            }

        }
    }

    public static class OtherInfo implements Serializable {
        /**
         * loading : 0
         * otherInfo :
         * purchasingMethod : 1
         * receivingMethod : 0
         * transport : 1
         * unloading : 0
         */

        private int loading;
        private String otherInfo;
        private int purchasingMethod;
        private int receivingMethod;
        private int transport;
        private int unloading;
        private int installService;

        public int getLoading() {
            return loading;
        }

        public void setLoading(int loading) {
            this.loading = loading;
        }

        public String getOtherInfo() {
            return otherInfo;
        }

        public void setOtherInfo(String otherInfo) {
            this.otherInfo = otherInfo;
        }

        public int getPurchasingMethod() {
            return purchasingMethod;
        }

        public void setPurchasingMethod(int purchasingMethod) {
            this.purchasingMethod = purchasingMethod;
        }

        public int getReceivingMethod() {
            return receivingMethod;
        }

        public void setReceivingMethod(int receivingMethod) {
            this.receivingMethod = receivingMethod;
        }

        public int getTransport() {
            return transport;
        }

        public void setTransport(int transport) {
            this.transport = transport;
        }

        public int getUnloading() {
            return unloading;
        }

        public void setUnloading(int unloading) {
            this.unloading = unloading;
        }

        public int getInstallService() {
            return installService;
        }

        public void setInstallService(int installService) {
            this.installService = installService;
        }

    }
}
